/**
 * 依赖包：jquery.min.js、jquery.eui.min.js、etb-collection.js
 */
$.extend($.fn.datagrid.methods, {
	loader : function(_76c, _76d, _76e) {
		var opts = $(this).datagrid("options");
		if (!opts.url) {
			return false;
		}
		alert(opts.url);
		$.ajax({
			type : opts.method,
			url : opts.url,
			data : _76c,
			dataType : "json",
			success : function(data) {
				_76d(data);
			},
			error : function() {
				_76e.apply(this, arguments);
			}
		});
	},
	/**
	 * 携带条件重新加载
	 */
    reloadWithCriteria : function(jq, param) {
        var grid = $(jq);
        var toolbar = grid.datagrid('options').toolbar;
    	if(toolbar) {
    		var form = new ListForm(toolbar);
    		var map = new Map(grid.datagrid("options").queryParams).append(new Map(form.getData()));
    		map.clearNullAndEmptyValue();
    		grid.datagrid("load", map.toJson());
    		grid.datagrid("clearSelections");
    	}
    },
	/**
	 * 删除选中项
	 */
	deleteSelected : function(jq, param) {
	    var grid = $(jq);
	    var rows = grid.datagrid("getSelections");
	    if(rows.length == 0) {
	    	$.messager.alert('提示', '请先选择要删除的内容', 'info');
	    	return;
	    }
		var ids = new List();
		new List(rows).each(function(row){
			ids.add(row.id);
		});
		var json = {"ids": ids.toString()};
		$.messager.confirm('提示', '你确定要删除选中项？', function(result){
			if(result) {
				ajax({
					url:param.url, 
					data:json, 
					success:function() {
						if(param.success) {
							param.success(ids);
						}
						grid.datagrid("reloadWithCriteria");
					}
				});
			}
		});
	},
	/**
	 * 取消所有选中行，只选中当前指定行
	 */
    onlySelectThisRow : function(jq, param) {
        var grid = $(jq);
        grid.datagrid('clearSelections');
        grid.datagrid('selectRow',param.rowIndex);
    }
});
function onlySelectDatagridRow(rowIndex, rowData) {
	$(this).datagrid('onlySelectThisRow', {rowIndex: rowIndex});
}